package com.itheima;

import com.itheima.service.BookService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 *
 * DI注入：存在的问题就是如何在注入对象时提供对象的参数：引用类型参数，简单类型参数    -->参数可能是对象的方法中需要使用的参数，需要配置
 * 引用类型参数：使用 <property/>标签，先将引用类型对象声明为bean，再注入
 *      问题 1：如果在bean对象中有多个对象要引用怎么办？
 *      在相应的围堵标签bean中添加多个<property></property>
 *      并且引用的bean一定要提前声明成bean对象，并且提供set方法
 *
 * 简单类型参数：
 * 1.在对象中先声明简单类型参数
 * 2.提供对应的setter方法
 * 3.将配置文件中的bean标签换成围堵标签，同样使用<property/>
 */
public class AppForDiSet {

    public static void main(String[] args) {
        ApplicationContext cx =new ClassPathXmlApplicationContext("applicationContext.xml");

        BookService bookService = (BookService) cx.getBean("bookService");

        bookService.save();
    }
}
